//
//  XJLocationView.m
//  XinJiangMall
//
//  Created by RaoBo on 2018/5/29.
//  Copyright © 2018年 Tzyang. All rights reserved.
//

#import "XJLocationView.h"
#import "XJLocationCell.h"


@interface XJLocationView()<UITableViewDelegate,UITableViewDataSource>

@property(nonatomic, strong) UITableView *tableView;
@property(nonatomic, assign) NSInteger currentSelectLocationIndex; // 记录当前选中的cell


@end
@implementation XJLocationView

#pragma mark - 一初始化
- (UITableView *)tableView {
    if(!_tableView){
        _tableView = [[UITableView alloc] initWithFrame:self.bounds style:(UITableViewStylePlain)];
        _tableView.delegate = self;
        _tableView.dataSource = self;
        
        _tableView.rowHeight = 80;
        [_tableView registerClass:[XJLocationCell class] forCellReuseIdentifier:@"XJLocationCellId"];
        
    }
    return _tableView;
}

- (instancetype)initWithFrame:(CGRect)frame
{
    self = [super initWithFrame:frame];
    if (self) {
        [self setupView];
        
        NSLog(@"=====:%ld",self.locationArray.count);
    }
    return self;
}
- (void)setupView {
    [self addSubview:self.tableView];
}


#pragma mark - UITableViewDataSource

- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
    return 2; // 定位地址 、附近地址
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
    if (section == 0) {
        return 1; // 定位地址
    }else {
        
        return self.locationArray.count;
    }
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
    
    XJLocationCell *cell = [tableView dequeueReusableCellWithIdentifier:@"XJLocationCellId"];

    if (indexPath.section == 0) {
        BMKPoiInfo *poiInfo = self.locationArray[indexPath.row];
        [cell configureXJLocationCellWithIcon:@"address_list_on" name:poiInfo.name address:poiInfo.address];
    }else{
        BMKPoiInfo *poiInfo = self.locationArray[indexPath.row];
        [cell configureXJLocationCellWithIcon:@"address_list_off" name:poiInfo.name address:poiInfo.address];
        
        if (self.currentSelectLocationIndex == indexPath.row) {
            cell.accessoryType=UITableViewCellAccessoryCheckmark;

        }else {
            cell.accessoryType=UITableViewCellAccessoryNone;

        }
    }
    return cell;
}

// 点击cell
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
    

    if (indexPath.section ==1) { // 第二个section
        self.currentSelectLocationIndex = indexPath.row;
        
        //同时记得刷新数据.不然结果不显示
        [self.tableView reloadData];
        
        //将点击的 模型传递出去。
    }
    
    //点击的cell对应的model
    BMKPoiInfo *selectedModel = self.locationArray[indexPath.row];
//    XJLog(@"地址:%@---维度:%f---经度:%f",selectedModel.name,selectedModel.pt.latitude,selectedModel.pt.longitude);
    
    if (self.didSelectCellBlock) {
        self.didSelectCellBlock(selectedModel);
    }
}

- (NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section {
    if (section ==0) {
        return @"定位地址";
    }else {
        return @"附近地址";
    }
}


#pragma mark - 接口
- (void)xjLocationViewReloadData{
    
    dispatch_async(dispatch_get_main_queue(), ^{

        [self.tableView reloadData];
    });
}

@end
